In [1]:
import logging
import logging.handlers
from poppy_rate import PoppyRate
import poppy_rate
import poppy_rate.primitives as pp
Activation des logs en info dans le fichier logs//poppyrate.log
In [2]:
handler = logging.handlers.TimedRotatingFileHandler('logs/poppyrate.log', when="midnight", backupCount=10)
formatter = logging.Formatter('\033[1;30m%(asctime)s \033[0;33m%(levelname)s \033[1;32m%(threadName)s \033[0m%(module)s:%(lineno)-4s \033[0m%(message)s\033[0m')
handler.setFormatter(formatter)
handler.setLevel('INFO')
logging.root.handlers = []
logging.root.addHandler(handler)
logging.root.setLevel('INFO')
In [3]:
robot = PoppyRate(simulator = "vrep", use_snap=True, use_remote=True, use_http=True, start_services=True)
In [4]:
robot.play_sound.start()
In [ ]:
robot.abs_x.goal_position = -10
robot.head_z.goal_position = 20
In [ ]:
robot.dance_beat_motion.start()
In [ ]:
robot.stand_position.start()
In [ ]:
robot.say_hello.start()
In [ ]:
import operator
# liste triée par t° de tuples (nom_moteur,t°)
temperatures =sorted([(m.name, m.present_temperature) for m in robot.motors], key=operator.itemgetter(1), reverse=True)
#affiche le tout
for m,t in temperatures:
print "{:>20}: {}°C".format(m,t)
In [ ]:
robot.compliant = True
In [ ]:
robot.close()
In [ ]:
import os
In [ ]:
directory = os.path.join(os.path.split(os.path.dirname(os.path.abspath(pp.__file__)))[0],'media','sounds')
[f[:-4] for f in os.listdir(directory) if f.endswith('.ogg')]
In [ ]:
os.path.split?
In [ ]:
os.path.join(os.path.dirname(os.path.abspath(__file__)), 'media'
In [ ]:
from types import MethodType
def say_something(something):
def fn(self):
print("hello %s" % something)
return fn
#def fn(self,):
# print("hello")
prim = robot.say_hello
for k in ['world', 'universe']:
setattr(prim, 'say_%s'%k, MethodType(say_something(k), prim, type(prim)))
In [ ]:
prim.say_world()